//implementaziione della funzione cerca
int cerca (int v[10],int e){
	int dx=9, sx=0, trovato=0, med;
	while ( !trovato && dx>=sx) {
		//calcolo la posizione centrale dello spazio di ricerca
		med=(sx+dx)/2;
		if (v[med]<e) {
				//modificare l'estremo sx
				sx=med+1;
		} else if (v[med]>e) {
				//modificare l'estremo dx
				dx=med-1;
		} else trovato=1;
	}
	return (trovato)?med:-1 ;
}
int bubbleSort(int *a,int dim){
	int i,scambi;
	while (scambi>0) {
		scambi=0;
		for (i=0;i<dim-1;i++){
			if (a[i]==a[i+1]){
				swap(&a[i], &a[i+1]);
				scambi++;
			}
		}
	}
	return 0;
}
int min(int *a,int dim,int *p){
	int pos,min_number=1;
	
	*p=1;
	for (pos=1; pos<dim; pos++) {
	  if (a[pos]<a[*p]) {
			*p=pos;
			min_number=1;
		} else if (a[pos]==a[*p])
			min_number++;
	}

	return min_number;
}


int smin(int *a,int dim,int s,int *p){
	int i;
	*p=s;
	for (i=s+1; i<dim; i++) {
		if (a[i]<a[*p]) {
			*p=i;
		}
	}
	
	return 0;
}


int swap(int *src, int *dst){
	int buf;
	buf= *dst;
	*dst=*src;
	*src=buf;
	return 0;
}

int display(int *a,int dim){
	int i;
	printf("\n");
	for (i=0; i<dim; i++) {
		printf("%d,",a[i]);
	}
	printf("\n");
	return 0;
}


